package com.caregiver.watch.business.user.enums;

import lombok.Getter;

/**
 * 心电分析结果枚举
 */
@Getter
public enum EcgAnalysisResultEnum {
    
    /**
     * 无结果，有干扰或者数据异常
     */
    NO_RESULT(0, "无结果"),
    
    /**
     * 窦性心率
     */
    SINUS_RHYTHM(1, "窦性心率"),
    
    /**
     * 窦性心率过缓
     */
    SINUS_BRADYCARDIA(2, "窦性心率过缓"),
    
    /**
     * 窦性心率过速
     */
    SINUS_TACHYCARDIA(3, "窦性心率过速"),
    
    /**
     * 心律不齐（早搏）
     */
    ARRHYTHMIA_PREMATURE(4, "心律不齐（早搏）"),
    
    /**
     * 心律不齐（房颤）
     */
    ARRHYTHMIA_AF(5, "心律不齐（房颤）"),
    
    /**
     * 心率过速（室上性心动过速）
     */
    TACHYCARDIA_SVT(6, "心率过速（室上性心动过速）");
    
    private final Integer code;
    private final String description;
    
    EcgAnalysisResultEnum(Integer code, String description) {
        this.code = code;
        this.description = description;
    }
    
    /**
     * 根据代码获取枚举值
     * @param code 代码
     * @return 对应的枚举值
     */
    public static EcgAnalysisResultEnum parse(Integer code) {
        if (code == null) {
            return null;
        }
        for (EcgAnalysisResultEnum result : EcgAnalysisResultEnum.values()) {
            if (result.getCode().equals(code)) {
                return result;
            }
        }
        return null;
    }
}
